home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power Programmierung
/
Power-Programmierung (Tewi)(1994).iso
/
magazine
/
progjour
/
1990
/
05
/
startup.asm
< prev
next >
Wrap
Assembly Source File
|
1989-12-21
|
902b
|
58 lines
title start up code for assembly langauge
include asm.inc
dosseg
NULL segment para public 'BEGDATA'
NULL ends
public psp,startup,dgroup_segment
.data
psp dw 0
dgroup_segment dw 0
.data?
extb _edata,_end
.code
extn set_argc_argv,ms_dos
;; startup
;
; entry AX offset stack
; ES program segment prefix
; SS DGROUP
; exit BP 0
; may use AX,BX,CX,DX,DI,SI,DS,ES
;
startup proc
cld
mov bp,0
mov psp[bp],es
add ax,15 ; compute number of paragraphs
mov cl,4 ; in program
shr ax,cl
mov bx,ss
add bx,ax
sub bx,psp[bp]
mov ah,4Ah ; shrink program memory block for
call ms_dos ; dynamic storage system
mov dgroup_segment[bp],ss
mov al,0 ; zero bss segment
mov cx,offset DGROUP:_end
mov es,dgroup_segment[bp]
mov di,offset DGROUP:_edata
sub cx,di
rep stosb
call set_argc_argv
ret
startup endp
end